// CastleBot FaceStabber - Ported by Glaber (original SOC) and MIDIMan (conversion to Lua)

freeslot(
	"MT_CASTLEBUT2",
	"S_CASTLEBUT2_STND1",
	"S_CASTLEBUT2_STND2",
	"S_CASTLEBUT2_STND3",
	"S_CASTLEBUT2_STND4",
	"S_CASTLEBUT2_STND5",
	"S_CASTLEBUT2_STND6",
	"S_CASTLEBUT2_CHARGE1",
	"S_CASTLEBUT2_CHARGE2",
	"S_CASTLEBUT2_CHARGE3",
	"S_CASTLEBUT2_CHARGE4",
	"SPR_SPLC"
)

mobjinfo[MT_CASTLEBUT2] = {
	//$Name Lunce-O-Butts
	//$Sprite SPLCA1
	//$Category Spleenik.Badniks
	doomednum = 4063,
	spawnstate = S_CASTLEBUT2_STND1,
	spawnhealth = 1,
	seestate = S_CASTLEBUT2_STND1,
	reactiontime = 35,
	meleestate = S_CASTLEBUT2_CHARGE1,
	deathstate = S_XPLD_FLICKY,
	deathsound = sfx_pop,
	speed = 3,
	radius = 32*FRACUNIT,
	height = 64*FRACUNIT,
	flags = MF_ENEMY|MF_SPECIAL|MF_SHOOTABLE
}

states[S_CASTLEBUT2_STND1] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND2}
states[S_CASTLEBUT2_STND2] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND3}
states[S_CASTLEBUT2_STND3] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND4}
states[S_CASTLEBUT2_STND4] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND5}
states[S_CASTLEBUT2_STND5] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND6}
states[S_CASTLEBUT2_STND6] =	{SPR_SPLC,	A,	1,	A_FaceStabChase,	0,	0,	S_CASTLEBUT2_STND1}

states[S_CASTLEBUT2_CHARGE1] =	{SPR_SPLC,	B,	14,	A_PlayActiveSound,	0,	0,	S_CASTLEBUT2_CHARGE2}
states[S_CASTLEBUT2_CHARGE2] =	{SPR_SPLC,	B,	0,	A_PlayAttackSound,	0,	0,	S_CASTLEBUT2_CHARGE3}
states[S_CASTLEBUT2_CHARGE3] =	{SPR_SPLC,	B,	0,	A_FaceTarget,		0,	0,	S_CASTLEBUT2_CHARGE4}
states[S_CASTLEBUT2_CHARGE4] =	{SPR_SPLC,	B,	35,	A_Thrust,			20,	1,	S_CASTLEBUT2_STND1}

//Puyo
if not(kirbyabilitytable)
    rawset(_G, "kirbyabilitytable", {})
end
kirbyabilitytable[MT_CASTLEBUT2] = 10    // Makes MT_CASTLEBUT2 give Sword
